This page last changed on May 26, 2010 by dcline.

About mbarivision and pmbarivision 

Mbarivision is the name of the main executable in the AVED software. Mbarivision got its name because it is built upon the Saliency Toolkit and supports similar commands to the ezvision binary also build with Toolkit, thus the name mbarivision.

Pmbarivision is a parallel version of the Mbarivision software. Pmbarivision is a rewritten version of mbarivision, designed to achieve speed-up through a combination of pipelining the mbarivision algorithm and distributing saliency algorithm computation across nodes in a Beowulf cluster. It uses the MPICH2 message passing libraries. Pmbarivision is used together with a second executable pvisionTCPmbari

Both are command line programs with options available using the --help switch, e.g.

mbarivision --help

A more detailed description of the options in mbarivision can be found here.

Getting (p)mbarivision

Mbarivision has always been an  experimental component of the AVED software. It is the main component in the AVED software suite that performs the automated detection and tracking. Classification is done in the aved-classification module. To get the latest version:

  1. Install Mercurial (http://mercurial.selenic.com/wiki/). On Linux, run as root user:
    yum install '*mercurial*'
    
  2. Clone the repository to your local machine http://code.google.com/p/avedac/source/checkout

Building and Installing (p)mbarivision

There are two methods to install: either through a Makefile, or through a Maven build. The Maven build is meant to be used when installing the entire code suite. If building pmbarivision, you must build mbarivision first because it's a dependency in the pmbarivision build.

Mbarivision Makefile install

  1. Change into the source directory:
    cd /full/path/to/avedac/aved-mbarivision/src/main/cpp
    
  2. Run configure with the saliency and xercesc paths pointing to the installed saliency and xerces code of your installation, e.g.
    ./configure --prefix=${HOME}/aved --with-saliency=${HOME}/saliency --with-xercesc=${HOME}/Xerces-C_2_7_0
    
  3. Now install. The executables will be installed in the subdirectory bin defined by the --prefix option, e.g. in the above example ${HOME}/aved/bin. Make sure you have the appropriate permissions to write to the directory.
    make all install
    

Pmbarivision Makefile install

  1. Build mbarivision first because it's a dependency in the pmbarivision build.
  2. Test whether the path to the mpicxx compiler is visible in your PATH, if not then add it, e.g.
    export PATH=$PATH:/opt/mpich2-1.1p1/bin
    
  3. Change into the source directory:
    cd /full/path/to/avedac/aved-pbarivision/src/main/cpp
    
  4. Run configure with the saliency and xercesc paths pointing to the installed saliency, xerces, and the aved-mbarivision dependency of your installation. e.g.
    ./configure --prefix=${HOME}/aved --with-saliency=${HOME}/saliency --with-xercesc=${HOME}/Xerces-C_2_7_0 --with-mbarivision=${HOME}/avedac/aved-mbarivision
    
    Handy Hint
    If you update either the mbarivision or Saliency source code, be sure to run a make allclean. This will clean not only the object files, but the a generated dependencies file that is used to compile each source file.
  1. Now install. The executables will be installed in the subdirectory bin defined by the --prefix option, e.g. in the above example ${HOME}/aved/bin. Make sure you have the appropriate permissions to write to the directory.
    make all install
    
    Important
    The install --prefix must be in a shared NFS directory for the pmbarivision code to run correctly.

Mbarivision Maven Install

  1. Install Java
    Install Java from TBD and set your JAVA_HOME environment variable
  2. Install Maven
    Maven is based on the concept of a project object model (POM). After you download the code, if you look in each of the major subdirectories in this software you will see a pom.xml file, and in each of these files is a description of the build and its dependencies, whether it be a java build, c++ build, or otherwise.
    Download Maven from http://maven.apache.org/download.html
  3. Modify the pom.xml
    Edit the pom.xml in the root directory of the checked-out code to match your installation. These paths point to the installed saliency and xerces code of your installation.
/full/path/to/avedac/pom.xml
<profiles>
    <properties>
              ...
	      <installPath>${HOME}/aved</installPath>
	      <xercesRoot>${HOME}/Xerces-2_7_0</xercesRoot>
              <saliencyRoot>${HOME}/saliency</saliencyRoot>
    </properties>
</profiles>

To build and install the mbarivision executable:

 mvn reactor:make -Dmake.folders=aved-mbarivision

To build and install the pmbarivision and pvisionTCPmbari executables:

 mvn reactor:make -Dmake.folders=aved-pmbarivision

The binaries will be installed to the directory defined by the property <installPath> in the parent pom.xml. Make sure you have the appropriate permissions to write to the directory.

Document generated by Confluence on Feb 03, 2026 14:12